Device cooperation system, image forming apparatus, and function providing method

ABSTRACT

In a device cooperation system, devices connected via a network take partial charge of providing a function. A first device acquires image data to be output; receives a condition used when the first device and a second device output the image data; stores a possible output amount that can be output by the first device; determines whether a total page number, which is obtained from the condition and a number of pages of the acquired image data, is less than or equal to the possible output amount; determines first and second output numbers to be respectively allocated to the first and second devices; sends the image data and the second output number to the second device; and updates the possible output amount according to a number output by the first and second devices.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a device cooperation system in which plural devices connected via a network take partial charge of providing functions of the devices.

2. Description of the Related Art

There is known a processing format referred to as device cooperation, by which plural devices connected in a network cooperate with each other to execute a single job. Device cooperation means that plural devices take partial charge of providing functions necessary for a single job constituted by a series of processes starting from input to output.

FIG. 1 illustrates an example of executing a job by device cooperation. An MFP (multifunction peripheral) 1 and an MFP 2 are connected to each other via a network. The MFP 1 does not have a fax function, but the MFP 2 has a fax function. A user Q wants to transmit image data by fax, but because the MFP 1 does not have a fax function, the user Q uses the MFP 1 to scan an original document by the scanner function, and use the fax function of the MFP 2 to transmit the image data by fax.

FIG. 2 illustrates another example of executing a job by device cooperation. Both the MFP 1 and the MFP 2 have a printing function. The user Q wants to print out plural copies of the image data. The printing operation can be done with only the MFP 1; however, by having the MFP 2 take partial charge of the printing operation, the printing operation can be completed quickly. The user Q may operate the MFP 1 to scan the original document with the scanning function, and transmit the image data and print conditions to the MFP 2, so that the printing operation is shared by the MFP1 and the MFP 2.

Incidentally, MFPs are shared by many users in offices. For this reason, conventionally, there are MFPs having a function of setting the upper limit frequency (upper limit usage amount) of copying and printing for each user, so that a particular person does not use the copying and printing functions unlimitedly (see, for example, Patent Document 1). Patent document 1 discloses the following service execution device. The service execution device transmits, to a server, a usage request for authentication information and a usage request of a scheduled number of sheets to be used. When the scheduled number of sheets to be used requested to the server is less than or equal the number of sheets that the user can use, the service execution device executes a job based on user instructions with the scheduled number of sheets to be used set as the upper limit.

However, in patent document 1, it is not considered how to limit the usage amount for devices capable of device cooperation. For example, in the example of FIG. 1, it is not considered whether the MFP 1 operated by the user Q limits the usage amount or whether the MFP 2 providing the fax function limits the usage amount. In the example of FIG. 2, both the MFP 1 and the MFP 2 perform printing, and therefore even if the usage amount of the MFP 1 operated by the user Q can managed, the usage amount of the MFP 2 cannot be managed.

-   Patent Document 1: Japanese Laid-Open Patent Publication No.     2010-074431

SUMMARY OF THE INVENTION

The present invention provides a device cooperation system in which one or more of the above-described disadvantages are eliminated.

A preferred embodiment of the present invention provides a device cooperation system providing a usage amount limiting device capable of limiting the usage amount at the time of device cooperation.

According to an aspect of the present invention, there is provided a device cooperation system including plural devices connected via a network, which take partial charge of providing a function of the plural devices, wherein a first device includes an acquiring unit configured to acquire image data that is an output target, an output condition receiving unit configured to receive an output condition used when the first device and at least one second device output the image data, a storage unit configured to store a possible output amount that can be output by the first device, an output possibility determining unit configured to determine whether a total page number, which is obtained from the output condition and a number of pages of the image data acquired by the acquiring unit, is less than or equal to the possible output amount, an allocation number determining unit configured to determine a first output number to be allocated to the first device and a second output number to be allocated to the at least one second device, a data communication unit configured to send the image data and the second output number to the at least one second device, and a possible output amount update unit configured to update the possible output amount according to an output number output by the first device and the at least one second device.

According to an aspect of the present invention, there is provided an image forming apparatus for taking partial charge of providing a function with at least one device connected via a network, the image forming apparatus including an acquiring unit configured to acquire image data that is an output target; an output condition receiving unit configured to receive an output condition used when the first device and at least one second device output the image data; a storage unit configured to store a possible output amount that can be output by the first device; an output possibility determining unit configured to determine whether a total page number, which is obtained from the output condition and a number of pages of the image data acquired by the acquiring unit, is less than or equal to the possible output amount; an allocation number determining unit configured to determine a first output number to be allocated to the first device and a second output number to be allocated to the at least one second device; a data communication unit configured to send the image data and the second output number to the at least one second device; and a possible output amount update unit configured to update the possible output amount according to an output number output by the first device and the at least one second device.

According to an aspect of the present invention, there is provided a function providing method by which plural devices connected via a network take partial charge of providing a function of the plural devices, the function providing method including acquiring image data that is an output target; receiving an output condition used when a first device and at least one second device output the image data; determining whether a total page number, which is obtained from the output condition and a number of pages of the image data acquired at the acquiring, is less than or equal to a possible output amount that can be output by the first device, the possible output amount being stored in a storage unit; determining a first output number to be allocated to the first device and a second output number to be allocated to the at least one second device; sending the image data and the second output number to the at least one second device; and updating the possible output amount according to an output number output by the first device and the at least one second device.

BRIEF DESCRIPTION OF THE DRAWINGS

Other objects, features and advantages of the present invention will become more apparent from the following detailed description when read in conjunction with the accompanying drawings, in which:

FIG. 1 illustrates an example of executing a job by device cooperation;

FIG. 2 illustrates another example of executing a job by device cooperation;

FIG. 3 schematically illustrates a device cooperation system;

FIGS. 4A through 4D illustrate examples of formats of device cooperation of an MFP 1 and an MFP 2 in respective applications;

FIG. 5 illustrates an operation of device cooperation;

FIG. 6 illustrates a configuration of a device cooperation system;

FIG. 7 illustrates a hardware configuration of the MFPs 1, 2;

FIG. 8 is a functional block diagram of the MFP;

FIG. 9 illustrates an example of usage amount limit information;

FIG. 10 illustrates an example of device management information;

FIG. 11 illustrates the relationship between blocks when the MFP 1 and MFP 2 perform device cooperation;

FIGS. 12A and 12B illustrate a list of communication possible devices examples;

FIG. 13 illustrates an example of a menu of a device cooperation job displayed on a display unit;

FIGS. 14A through 14C illustrate an example of a menu of a device cooperation job displayed on a display unit;

FIGS. 15A through 15E illustrate an example of job information;

FIGS. 16A and 16B indicate a sequence diagram illustrating procedures of allocating a usage amount from the MFP 1 to the MFP 2;

FIGS. 17A and 17B indicate a sequence diagram illustrating procedures of allocating a usage amount from the MFP 1 to the MFP 2 when a job execution error occurs;

FIGS. 18A and 18B indicate a sequence diagram illustrating procedures of allocating a usage amount from the MFP 1 to the MFP 2 when a job execution error occurs;

FIGS. 19A and 19B indicate a sequence diagram illustrating procedures of allocating printing by each sheet from the MFP 1 to the MFP 2; and

FIGS. 20A and 20B indicate a sequence diagram illustrating procedures of subtracting the allocated page number of the MFP 2 from the usage amount limit information before the MFP 1 starts executing the job.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

A description is given, with reference to the accompanying drawings, of embodiments of the present invention.

FIG. 3 schematically illustrates a device cooperation system 200 according to the present embodiment. An MFP (multifunction peripheral) 1 and an MFP 2 (hereinafter, referred to as “MFP 100” when not distinguished from each other) can execute a single job by cooperating with each other. This system in which plural devices provide functions to each other is referred to as the device cooperation system 200. A job that is executed by two or more MFPs in cooperation with each other is referred to as a device cooperation job. Furthermore, image data corresponding to one side of a sheet is referred to as one page, and the minimum unit of a sheet material is referred to as one page, regardless of single-sided printing or double-sided printing.

FIG. 3 schematically illustrates procedures performed by the MFP 1 and the MFP 2 for executing a device cooperation job of a copy application. The MFP 1 and the MFP 2 respectively store the possible usage amount in which the remaining number of pages that the user Q can use is registered, in the usage amount limit information. The possible usage amount of the MFP 1 is the number of pages that the user Q can output with the MFP 1, and the possible usage amount of the MFP 2 is the number of pages that the user Q can output with the MFP 2.

When the user Q operates the MFP 1 to execute a device cooperation job for performing printing with the MFP 1 and the MFP 2, the MFP 1 allocates a number of pages to the MFP 1 and the MFP (hereinafter, allocated page number).

When the MFP 1 determines the allocated page number of the MFP 2, the MFP 1 uses device management information of the MFP 2 to determine the allocated page number of the MFP 2 to attain minimized printing time or efficient power consumption.

The MFP 1 determines whether the total page number of the MFP 1 and the MFP 2 is less than or equal to the possible usage amount. When the total page number is less than or equal to the possible usage amount, the MFP 1 and the MFP 2 print a number of pages corresponding to the respective allocated page numbers. The MFP 1 subtracts the total page number from the possible usage amount of the MFP 1.

As described above, the MFP 1 determines whether the device cooperation job can be executed within the possible usage amount of the MFP 1, and therefore a single job can be executed within the range of the usage amount limit information in the device cooperation system 200.

In the case of a printer application, a PC (personal computer) (not shown) requests a device cooperation job to the MFP 1. The PC transmits print conditions and image data of the device cooperation job to the MFP 1, and thereafter the MFP 1 performs processing as in the case of the copy application.

Similar to the copy application, in the case of the fax application, the MFP 1 allocates a usage amount to the MFP 1 and the MFP 2, determines whether the total usage amount of fax transmission of the MFP 1 and the MFP 2 is less than or equal to the possible usage amount of the MFP 1, and subtracts the total number of pages from the possible usage amount of the MFP 1. Therefore, even for a different application, the same configuration is applicable.

The same applies to a case where the MFP 1 does not have a fax function. The MFP 1 allocates an allocated page number (in this case, the total page number) only to the MFP 2, and subtracts the total page number from the possible usage amount of the MFP 1.

Device Cooperation

A description is given of device cooperation. Device cooperation includes all formats where one MFP uses the function of the other MFP. That is to say, cases in which a job is not executed or an application is not operating are also referred to as device cooperation. However, the MFP 1 and the MFP 2 often operate for each application, and therefore a description is given by taking an application as an example. In the description, it is assumed that the device operated by the user is the MFP 1.

The application identifies a combination of one of the plural input units of the MFP and one of the plural output units of the MFP, and controls devices and provides functions based on the identified combination.

FIGS. 4A through 4D illustrate examples of formats of device cooperation of the MFP 1 and the MFP 2. FIGS. 4A through 4D illustrate a copy application, a scanner application, and a transmission application; however, other applications may also be implemented by having the MFP 1 and the MFP 2 provide functions to each other. In the copy application, a single job goes through the processes of scanning an original document by a scanner function, image processing, printing, and post-processing (finishing). Image processing is, for example, OCR processing and confidential print processing. Post-processing is, for example, hole punching and stapling. These processes are not frequently used.

In the scanner application, a single job goes through the processes of scanning an original document by a scanner function, image processing, and transmitting. The image processing is, for example, OCR processing, PDF conversion, and encryption processing. These processes are not frequently used. Transmission includes the processes of, for example, transmitting by email or transmitting to a folder of the user Q.

In the transmission application, a single job goes through the processes of scanning an original document by a scanner function, image processing, and fax transmission. Image processing is, for example, OCR processing and confidential print processing. These processes are not frequently used. Fax transmission is, for example, fax transmission using a telephone line or an IP network.

Furthermore, device cooperation may be performed without executing a device cooperation job. In this case, the user Q may input instructions in the MFP 1 to read the image data stored in the MFP 2 from the MFP 1 and process the image data. The process may include printing, e-mail transmission, and fax transmission. Furthermore, the process may include deleting image data of the MFP 2 by the MFP 1, and displaying a preview of image data of the MFP 2 by the MFP 1. As described above, even if the MFP 1 and the MFP 2 do not execute a device cooperation job, a format of device cooperation is created.

Furthermore, FIGS. 4A through 4D describe device corporation of two MFPs; however, there may be cases where three or more MFPs perform device cooperation. In the case of device cooperation performed by three or more MFPs, combinations of MFPs taking charge of editing and outputting increase.

FIG. 5 illustrates the operation of device cooperation. In this example, a copy application 11 is taken as an example.

(1) A user Q operates the MFP 1, selects one of the applications described above, inputs user information, and sets execution conditions of a device cooperation job. (2) The application reports job information generated from execution to the job management module. Execution of the device cooperation job is controlled by the job management module. (3) When the user Q sets an original document and a start button is pressed, the job management module controls the engine management module, and the original document is scanned and image data is generated. (4) By generating the image data, the number of pages to be printed is known, and therefore the job management module compares the number of pages with the usage amount limit information, and determines whether printing is limited. By this determination, the usage amount in the device cooperation job may also be limited. (5) If printing is not limited, the job management module acquires device management information from the MFP 2. (6) The job management module determines an allocated page number, which is the number of pages to be printed by the MFP 2. (7) The job management module of the MFP 1 sends the job information in which the allocated page number is registered and the image data to the MFP 2. (8) The job management modules of the MFP 1 and the MFP 2 control the engine management modules, and perform printing.

The engine management module of the MFP 1 is used when the MFP 1 executes a job by itself (in a stand-alone manner), and the engine management module of the MFP 2 is used when the MFP 2 executes a job by itself. That is to say, the MFP 1 and the MFP 2 provide their own functions (not only the usage of an engine but also providing resources and processing results) to another MFP with which device cooperation is performed, to execute a single job.

Configuration Example

FIG. 6 illustrates a configuration of the device cooperation system 200. A LAN 1 and a LAN 2 form a single WAN. The LAN 1 and the LAN 2 are connected by an L3 switch or a router (not shown). Device cooperation may be performed when the number of LANs may be one or three or more. Communications among the MFP 1 through MFP 4, communications between servers 1 and 2, and communications between the MFP 1 through MFP 4 and a server 300 (hereinafter, referred to as server 1 or 2 when distinguished) may be wired or wireless.

To the LAN 1, three MFPs 1 through 3 and a server 1 are connected. To the LAN 2, the MFP 4 and the server 2 are connected. The MFPs 1 through 4 have at least one function among copying, scanning, fax transmission, and printing. The MFPs 1 through 4 do not need to have the same functions. Furthermore, the MFPs 1 through 4 may respectively have functions unique to themselves.

The servers 1 and 2 may be, for example, an information processing apparatus for user authentication or an information processing apparatus for providing functions that the MFPs 1 through 4 do not have (for example, OCR processing, translation processing, and converting file formats), although the servers 1 and 2 are not necessary. Furthermore, in the present embodiment, each MFP has usage amount limit information; however, when the server stores the usage amount limit information of each user, the server 1 or 2 is used. The server 1 or 2 not only compares the possible usage amounts of the respective MFPs, but may also compare the total usage amount that the user users the MFPs 1 through 4 with the usage amount limit information.

Furthermore, in the LAN 1, the MFPs 1 through 3 form a network through a hub or a LAN switch, and the MFP 2 and the MFP 3 are connected by an IEEE1394 interface. As described above, in the device cooperation system 200, one or all of the MFPs may be locally connected (in a peer-to-peer manner). Furthermore, the connection interface may be USB or a LAN cable, as long as communications can be performed between the MFPs. By locally connecting the MFPs, the image data is not transmitted through the LAN 1, 2, and therefore the network load can be reduced. Furthermore, the image data does not flow through the LAN 1, 2, and therefore security is enhanced.

In the device cooperation system 200 illustrated in FIG. 6, the following cooperation formats may be created.

Two or more arbitrary MFPs in the LAN 1 execute a single device cooperation job.

One or more arbitrary MFPs in the LAN 1 and the MFP 4 in the LAN 2 execute a single device cooperation job.

Furthermore, device cooperation may be performed with the user of the servers 1, 2.

FIG. 7 illustrates a hardware configuration of the MFP 1, 2. The MFP 100 includes a controller 120, an operations panel 130, an FCU (facsimile control unit) 140, a scanner engine 150, and a plotter engine 160.

The controller 120 includes a CPU 101, an ASIC 113, a NB (north bridge) 102, a SB (south bridge) 106, a MEM-P (system memory) 103, a MEM-C (local memory) 104, a HDD (hard disk drive) 105, a memory card slot 111, a NIC (network interface controller) 107, a USB device 108, an IEEE 1394 device 109, and a centronics device 110.

The CPU 101 is an IC for executing various kinds of information processing, and executes programs for providing applications and services in parallel in units of processes, by an OS such as UNIX (registered trademark). The ASIC 113 is an IC for image processing. The NB 102 is a bridge for connecting the CPU 101 and the ASIC 113. The SB 106 is a bridge for connecting the NB 102 with peripheral devices. The ASIC 113 and the NB 102 are connected via an AGP (Accelerated Graphics Port).

The MEM-P 103 is a memory connected to the NB 102. The MEM-C 104 is a memory connected to the ASIC 113. The HDD 105 is a storage connected to the ASIC 113, and is used for storing image data, document data, programs, font data, and form data.

The memory card slot 111 is connected to the SB 106, and is used for setting (inserting) a memory card 112. The memory card 112 is a flash memory such as a USB memory, and is used for distributing a program 115. The program 115 may be distributed by being downloaded from a predetermined server to the MFP 100.

The NIC 107 is a controller for performing data communications using MAC addresses via a network. The USB device 108 is a device for providing a serial port in compliance with the USB specification. The IEEE 1394 device 109 is a device for providing a serial port in compliance with the IEEE 1394 specification. The centronics device 110 is a device for providing a parallel part in compliance with the centronics specification. The NIC 107, the USB device 108, the IEEE 1394 device 109, and the centronics device 110 are connected to the NB 102 and the SB 106 via a PCI (Peripheral Component Interconnect) bus.

The operations panel 130 is a hardware component (operation unit) used by the user Q for inputting information in the MFP 100. The operations panel 130 includes a display unit 170 that is a hardware component for the MFP 100 to provide visible information to the operator. The operations panel 130 is connected to the ASIC 113. The FCU 140, the scanner engine 150, and the plotter engine 160 are connected to the ASIC 113 via the PCI bus 114.

The scanner engine 150 optically scans an original document placed on a contact glass, performs image processing by A/D converting the reflection light from the original document, and generates digital data (hereinafter, image data) having a predetermined resolution.

The plotter engine 160 includes, for example, tandem type photoconductive drums, and forms latent images by modulating laser beams and scanning the photoconductive drums based on image data and PDL data received from a user PC. An image corresponding to one page developed by applying toner to the latent images is transferred to a sheet by heat and pressure. The plotter engine 160 is not limited to a plotter of an electrophotographic type; the plotter engine 160 may be an inkjet type for forming an image by jetting liquid droplets.

The FCU 140 is connected to a network via the NIC 107, and transmits and receives image data by communication procedures according to the specification of T.37, T.38, for example. Alternatively, the FCU 140 is connected to a public communications network, and transmits and receives image data by communication procedures according to specifications of G3, G4, for example. Furthermore, when image data is received while the power of the MFP 100 is off, it is possible to activate the plotter engine 160 and print the image data onto a sheet.

FIG. 8 is a functional block diagram of the MFP 100. The MFP 100 includes an UI unit, a control unit, and hardware. The UI unit and hardware are described above. A memory 201 corresponds to the MEM-P 103 and the MEM-C 104, an engine 202 corresponds to the FCU 140, the scanner engine 150, and the plotter engine 160.

The control unit includes a copy application 11, a printer application 12, a fax application 13, a resource management module 14, a communication management module 15, an engine management module 16, a job management module 17, an authentication module 18, and a counter management module 19. Furthermore, the HDD 105 stores, for example, usage amount limit information 20 and device management information 21.

The copy application 11, the printer application 12, and the fax application 13 are examples of applications. When the user Q selects a copy button (not shown) by operating the operations panel 130, the copy application 11 starts operating, and when the user Q selects a printer button (not shown) by operating the operations panel 130, the printer application 12 starts operating, and when the user Q selects a fax button (not shown) by operating the operations panel 130, the fax application 13 starts operating. An OS 22 is a general-purpose operating system such as UNIX (registered trademark), and executes modules and software of applications as processes in parallel.

The job management module 17 acquires, from the applications, job information of the device cooperation job set by the user Q, and manages the execution of jobs. Specifically, the job management module 17 requests the resource management module 14 to control resources based on job information, and controls screen display, application management, the operation panel, etc., while receiving the state of progress from the resource management module 14. The job management module 17 detects the present number of output sheets and displays the number on the operations panel 130.

Furthermore, the job management module 17 includes a usage amount determining unit 32 and an allocated number determining unit 31, which may be positioned anywhere else in the control unit. The allocated number determining unit 31 allocates usage amounts to the respective cooperation devices within the limitation of the usage amount limit information 20, in a manner that the printing time and power consumption are advantageous. The usage amount is the number of pages in the case of the printer application 12 and the copy application 11, and the usage amount is the number of transmission destinations in the case of the fax application 13. The usage amount determining unit 32 determines whether the scheduled number of pages to be output is less than or equal to the possible usage amount. Details of the process are given below.

The resource management module 14 manages resources. When a request to use hardware resources such as the operations panel 130, the FCU 140, the scanner engine 150, the memory 201, the HDD 105, the NIC 107, the USB device 108, the IEEE 1394 device 109, and the centronics device 110 is received from the job management module 17, the resource management module 14 makes adjustments among the applications and controls the applications. Specifically, the resource management module 14 determines whether the requested hardware resource can be used (not used according to another request), and when it can be used, the resource management module 14 reports to the job management module 17 that the requested hardware resource can be used. Furthermore, the resource management module 14 performs usage scheduling of the hardware resource in response to the request from the job management module 17, and controls the engine management module 16.

The engine management module 16 controls the engine according to the usage schedule secured and created by the resource management module 14. Accordingly, the scanner engine, the plotter engine (monochrome line printer, color line printer), and the FCU actually execute the job.

The communication management module 15 is a module for providing a service that can be commonly used with respect to applications that require a network, such as device cooperation. The communication management module 15 assigns, to the respective applications, data received from the network by protocols and transmits data received from the applications to the network. Specifically, the communication management module 15 includes server daemons such as ftpd, httpd, lpd, snmpd, telnetd, and smtpd, and client functions of the same protocol.

The authentication module 18 is a module for performing user authentication. In the usage amount limit information 20 described below, in addition to the possible usage amount for each user, the user name and password are registered. The authentication module 18 authenticates the user Q based on whether the combination of the user name and password input to the operations panel 130 by the user Q is stored in the device cooperation system 200. Alternatively, the authentication module 18 may authenticate the user Q by reading, with an IC card reader (not shown), a user ID stored in an IC card held by the user Q.

When the server 1 or the server 2 functions as an authentication server, the authentication module 18 does not need to be installed in the MFP. A case where the authentication module 18 in each MFP authenticates the user is referred to as “local authentication”. A case where the server 1 or the server 2 authenticates the user Q is referred to as “network authentication”. The authentication result of local authentication is valid only in the MFP that performed the authentication, but in the case of network authentication, the authentication result is valid in MFPs in the network defined in advance.

The authentication module 18 reports whether authentication is successful to the application. When the authentication is successful, the application receives settings of execution conditions of a job, and when the authentication is unsuccessful, the application displays a message such as “authentication is unsuccessful” on the display unit 170.

The counter management module 19 counts the usage amount, and updates the usage amount in the usage amount limit information 20. A description of the usage amount limit information 20 is given below.

The applications and modules in the control unit are objects having one or more methods, which are executed as processes on the OS 22. The processes are executed in units of one or more threads, and the OS 22 assigns these threads to the CPU. The OS 22 manages the states of the threads (execution state, waiting state, executable state, etc.), and controls the thread to be assigned to the CPU among the threads that are in an executable state, according to a logic such as priority and round-robin. Accordingly, the processing speed of parallel execution is higher than that of parallel execution performed by switching processes. The applications and the modules transmit and receive messages by inter-process communications by executing the method.

Usage Amount Limit Information

FIG. 9 illustrates an example of the usage amount limit information 20. As described above, the usage amount limit information 20 includes user information. In the user information, a “user name”, a “user ID”, a “log-in name”, and a “password” are registered. The “user name” is a name or a nickname by which the user Q can be easily identified. The “user ID” is one or more numbers, symbols, or alphabetical letters, or a combination thereof, whose uniqueness is ensured in the device cooperation system. The “log-in name” is an identification name formed by one-byte letters and numbers that can be easily subjected to computer processing, for logging into the MFP. A “password” is one or more numbers, symbols, or alphabetical letters, or a combination thereof, by which the MFP authenticates the user Q.

In the usage amount limit information 20, the “upper limit usage amount”, the “usage amount”, and the “possible usage amount” are registered. According to the charging format, an “upper limit usage amount”, a “usage amount”, and a “possible usage amount” are registered both for color and monochrome.

The “upper limit usage amount” is the usage amount that the user Q can use. The “upper limit usage amount” is defined for each user for a particular time period, such as one year, half a year, quarter of a year, a month, and a week. The “usage amount” is the amount that the user Q has already used within the time period defined for the “upper limit usage amount”. The “possible usage amount” is the amount that the user Q can use within the time period. The relationship of “possible usage amount”=“upper limit usage amount”−“usage amount” is satisfied.

The “possible usage amount” is updated every time a user Q uses a printing function, etc. When the “possible usage amount” becomes zero, the job management module 17 prohibits printing. In FIG. 9, the “upper limit usage amount”, the “usage amount”, and the “possible usage amount” are registered. However, as long as there is the “possible usage amount”, or the “upper limit usage amount” and the “usage amount”, the usage amount can be managed. When the user Q logs into the MFP and operates the operations panel 130, the usage amount limit information 20 is displayed on the display unit 170, and therefore the user Q can confirm the “possible usage amount”.

Device Management Information

FIG. 10 illustrates an example of the device management information 21. In the device management information 21, functions of the MFP itself are registered. For example, for the function of “scan”, readable colors (full-color, black-and-white, two-color, or monochrome), the resolutions (100 through 600 dpi) that can be set at the time of scanning, and the original document type corresponding to the scanning operation (characters, photograph, characters/photograph) are registered.

As the editing functions, combining plural pages (2 in ¼ in ⅛ in 1), stamp printing for printing characters and symbols on an original document in a stamp format, copy guard for preventing fraudulent printing, magnification (25% through 200%) for reducing/enlarging by image processing, OCR for character recognition, and a PDF for converting the file format of image data, are registered.

As the outputting functions, fax and printing are registered. Furthermore, in the fax function, a storage transmission function is registered. In the printing function, the printing speed (60 pages/minute), power consumption (black-and-white printing, color printing, time of standup), stapling, punching, and Z-folding, are registered. As for stapling and punching, the positions on the sheet for performing these functions are also registered.

The MFP 1 and MFP 2 exchange their device management information 21, so that the processes that the MFP 1 can request to the MFP 2 and the processes that the MFP 2 can request to the MFP 1 can be managed at the MFP 1 and MFP 2. The MFP 1 and MFP 2 acquire the device management information 21 of the MFPs that are registered in a list of communication possible devices described below, and save the acquired information in the HDD 105.

Process of Functional Blocks During Cooperation

FIG. 11 illustrates the relationship between blocks when the MFP 1 and MFP 2 perform device cooperation. In FIG. 11, the same elements as those of FIG. 10 are denoted by the same reference numerals, and are not further described. Option trays 24 and 26 are sheet trays that can be additionally attached, and a finisher 25 is a device for performing stapling, punching, sorting, and binding.

List of Communication Possible Devices

The communication management module 15 includes a list of communication possible devices 23 of other MFPs and servers that are confirmed as being activated. There are the two following methods for acquiring the list of communication possible devices.

1) An administrator registers in advance in the MFP 1, the MFPs 2 through 4 with which device cooperation is possible, and the MFP 1 registers the MFP with which communication is possible among the registered MFPs 2 through 4, in the list of communication possible devices.

FIG. 12A illustrates an example of IP addresses of MFPs with which device cooperation is possible. In order to be able to perform device cooperation, the MFP needs to have a function of device cooperation. Furthermore, the MFP is not to be intentionally excluded from the targets of device cooperation by the administrator, or the MFP is to be added as the target of device cooperation. Hereinafter, an MFP that can perform device cooperation is referred to as a “device cooperation-use MFP”. In each MFP, the IP addresses of device cooperation-use MFPs as viewed from itself are registered.

For example, when the MFP 1 is activated, the MFP 1 reports that is has been activated to the device cooperation-use MFPs that are registered in itself and in the network. Accordingly, when the device cooperation-use MFP is activated, the device cooperation-use MFP sends a response, and therefore the MFP 1 registers in the list of communication possible devices that the device cooperation-use MFP from which a response is received is able to communicate. Meanwhile, the device cooperation-use MFPs that are already activated receive that the MFP 1 has been activated and register the MFP 1 in their respective lists of communication possible devices.

FIG. 12B illustrates an example of a list of communication possible devices. The communication management module 15 registers, in the list of communication possible devices, the IP addresses of MFPs that are confirmed as being able to communicate, among the device cooperation-use MFPs. For the IP address of an MFP that cannot be confirmed as being able to communicate, data such as a “-” mark indicating that it is not confirmed as being able to communicate is registered.

2) The MFP 1 detects, in the network, the MFP 2 through 4 that can perform device cooperation.

For example, when the MFP 1 is activated, the MFP 1 broadcasts a broadcast packet requesting to report an IP address to the MFPs that are able to perform device cooperation. A broadcast packet in which all transmission addresses are “1” can inquire whether device cooperation is possible, to all devices in the LAN 1.

Furthermore, for example, by specifying a directed broadcast address, it is possible to inquire whether device cooperation is possible, to MFPs having network addresses that are specified regardless of routers. The network addresses in a network to which the MFPs that can perform device cooperation belong, are known by the administrator, and therefore the search range can be easily identified.

More preferably, 1) and 2) are combined to detect the MFPs that can perform device cooperation. The MFP 1 registers the IP addresses of the detected MFPs 2 through 4, in the list of communication possible devices.

Setting of Device Cooperation Job

When the user Q operates the MFP 1 to execute a device cooperation job, the user Q logs into the MFP 1. Therefore, the copy application 11 sends an authentication request to the authentication module 18. The authentication request includes a user name and a password input by the user Q. The authentication module 18 sends an authentication result indicating whether authentication is successful, to the copy application 11 and the communication management module 15.

When the authentication is successful, the copy application 11 receives a setting of execution conditions of a job.

FIG. 13 illustrates an example of a menu of a device cooperation job displayed on the display unit 170. For example, when the user Q instructs copying by a device cooperation job, the user Q presses the copy button of the operations panel 130, or calls a setting screen of the device cooperation job.

In the operations panel 130, for example, a device search button 301 and a function search button 302 are displayed. The device search button 301 is a button for having the MFP 1 search for MFPs in the list of communication possible devices. That is to say, the communication management module 15 confirms that the device cooperation job is possible by communicating with MFPs in the list of communication possible devices, immediately before the device cooperation job. Meanwhile, the function search button 302 is for having the MFP 1 search for the MFPs 2 through 4 that can provide a function set by the user Q, from among the MFPs in the list of communication possible devices.

FIG. 13 (b) illustrates an example of a “device cooperation job—device list” screen displayed when the user Q presses the device search button 301. The MFP 1 displays a list of the MFPs 2 through 4 that have responded as being able to execute a device cooperation job, among the MFPs in the list of communication possible devices. A responding MFP sends its device name and IP address to the MFP 1. At this time, the responding MFP sends the device management information 21. The user Q confirms that a target MFP having the desired function is in the list, and presses a condition setting button 311.

FIG. 13 (d) is an example of a “cooperation job-scan setting” screen displayed when the user Q presses the condition setting button 311. In this screen, a scan setting menu is displayed for each MFP. As illustrated in FIG. 13 (d), device names are displayed in the tabs as “OWN DEVICE (referring to MFP 1)”, “IMAGICS (MFP 2)”, and “IPUKS (MFP 3)”. The user Q can select a MFP for making a scan setting by selecting a tab.

When the user Q selects a tab of a device name, the MFP 1 displays only the valid menus (that can be selected) for the selected MFP, based on the device management information 21.

The user Q can set scanning conditions such as color selection, original document type, and density, from the valid menus of the selected MFP. When the user Q sets the MFP for scanning the original document and the scanning conditions, the user Q sequentially selects an edit setting button 322 and a print setting button 323. When the user Q selects the edit setting button 322, a menu for selecting editing functions that the device can provide is displayed for each MFP and server. Similarly, when the user selects the print setting button 323, a menu for selecting printing functions that the device can provide is displayed for each MFP. As for the scan setting, the user Q can set conditions for only one MFP, but as for the print setting and edit setting, the user Q can set conditions for plural MFPs or servers. Finally, by pressing an execute button 324, the device cooperation job is started.

Furthermore, FIG. 13 (c) is an example of a “cooperation job-function search” screen displayed when the user Q presses the function search button 302. The MFP 1 displays a menu that can be set for each of the processes of “scanning conditions”, “editing conditions”, and “print conditions”, from the device management information 21 of other MFPs acquired in the past. The user Q selects an appropriate tab to set the “scanning conditions”, “editing conditions”, and “print conditions” which are search keys.

After setting the conditions, when the user Q presses a search button 331, the MFP 1 searches the device management information 21 acquired from another MFP in terms of the “scanning conditions”, “editing conditions”, and “print conditions”. By doing so, it is possible to identify an MFP that can perform scanning according to the “scanning conditions” set by the user Q, an MFP or a server than can perform editing according to the “editing conditions”, and an MFP that can perform printing according to the “print conditions”.

There are cases where the search hits plural devices matching the “scanning conditions”, plural devices matching the “editing conditions”, and plural devices matching the “print conditions”. In this case, as shown in FIG. 13 (d), the MFP 1 may display all devices for each of the “scanning conditions”, “editing conditions”, and “print conditions”, or may narrow down the number of devices to less than or equal to a predetermined number. To narrow down the number of devices to less than or equal to a predetermined number, a method of prioritizing the device itself (e.g., the MFP 1), a method of prioritizing an MFP in which the resource load is decreasing, and a method of prioritizing an MFP that is positioned at a distance near the device itself (physical distance or communication distance) may be performed.

The MFP 1 displays the one or more MFPs or servers that are hit by the search on a screen similar to FIG. 13 (d). That is to say, the MFP 1 displays the MFPs that match the conditions, by the “scan setting”, the “edit setting”, and the “print setting”. The “scanning conditions”, “editing conditions”, and “print conditions” are set in FIG. 13 (c), and therefore the user Q does not need to set the conditions again. The user Q presses an “execution” button after confirming the MFPs of the processes and conditions. Accordingly, the MFP 1 starts the device cooperation job.

FIG. 14A illustrates an example of a first screen of the print setting. In FIG. 14A, the user may select whether to set print conditions common to plural MFPs, or to set separate print conditions for the respective MFPs. In the case where common settings are selected, the user Q selects more than one MFP. In the case where separate settings are selected, the user Q sets print conditions for the respective MFPs in the next screen.

Furthermore, when the user Q sets a copy application or a printer application, the MFP 1 can acquire, from the MFPs in the list of communication possible devices, the elapsed time from the first printing operation and the power consumption for restoring the temperature at which printing is possible (print possible temperature), and display these elements. During printing, a large amount of power is necessary for increasing the temperature of a fixing unit to the print possible temperature (minimal printing temperature). Therefore, the power consumption may be reduced if the user Q selects an MFP with a short elapsed time since the last printing operation or an MFP having low power consumption for restoring the print possible temperature.

FIG. 14B illustrates an example of a screen for common settings in print conditions. When the user Q selects common settings, the user Q may set print conditions common to the MFPs, such as color/black-and-white, sheet size, number of copies, and magnification. The common print conditions are contents corresponding to the largest common denominator of device management information received from the MFPs in the list of communication possible devices. For example, when the MFP 1 can perform both color printing and black-and-white printing, and the MFP 2 can only perform black-and-white printing, color is not displayed in the “color/black-and-white” menu of FIG. 14B. Similarly, in the “sheet size” menu, only the sheet sizes that can be selected both in the MFP 1 and the MFP 2 are displayed. In the magnification menu, only the magnification range that can be selected both in the MFP 1 and the MFP 2 can be set. Sorting and stapling is displayed only when they can be selected both in the MFP 1 and the MFP 2.

Furthermore, the set number of copies (or number of pages) is allocated to the MFPs that are the target of common settings. The user Q may set whether to allocate a number of copies or a number of pages.

FIG. 14C illustrates an example of a screen for separate settings in print conditions. When the user Q selects separate settings, general print conditions such as sheet size, number of copies, and magnification may be set for each MFP. The respective MFPs print out the number of set copies.

Counting Usage Amount

The counter management module 19 counts the usage amount by a method set in advance. The following counting methods are merely examples; different counting methods may be used by the devices.

(1) Copy application, printer application

-   -   (i) Separately count color printing and black-and-white printing     -   (ii) Count printing on one side as one page     -   (iii) Count printing on a sheet that is greater than or equal to         a predetermined sheet size (for example, A3) as two pages         (2) Fax application (use any of the following methods set by         administrator)     -   (i) Count number of pages at the time of transmission (color         printing is rarely used in fax transmission, and sheet sizes         greater than or equal to A3 are rare in fax transmission)     -   (ii) Count one transmission destination as one, regardless of         the number of pages being transmitted     -   (iii) Count the gross number of transmitted pages (number of         pages at the time of transmission×number of destinations)

In the case of a copy application or a print application, the engine management module 16 or the resource management module 14 counts the printing number by each page. Every time one page is printed or when the job is completed, the job management module 17 acquires the printing number, counts the printing number according to the above counting methods, and updates the usage amount and the possible usage amount of the usage amount limit information 20. Similarly, in the fax application 13, the engine management module 16 or the job management module 17 counts the number of scanned original documents or the number of pages of the image data. The job management module 17 acquires the number of pages when a job is completed, and updates the usage amount and the possible usage amount of the usage amount limit information 20.

Job Information

When a setting of job execution conditions is received, the copy application 11 in FIG. 10 sends a job execution request to the job management module 17. The job management module 17 generates job information from the execution conditions.

FIGS. 15A through 15E illustrate an example of job information. The device cooperation job is executed in the order of “1. input→2. edit→3. output”. For each process, a “device in charge” is registered, and input conditions, edit conditions, and output conditions are registered.

Copy Application

FIG. 15A illustrates an example of a job of the copy application 11 in which only the MFP 1 performs printing, indicated as a matter of comparison. In the copy application, the device in charge of input is the MFP 1, the device in charge of editing is the MFP 2, and the device in charge of output (printing) is the MFP 1.

FIG. 15B illustrates an example of a device cooperation job of the copy application 11 printed by the MFP 1 and the MFP 2. In the copy application, the device in charge of input is the MFP 1, the device in charge of editing is the MFP 2, and the devices in charge of output (printing) are the MFP 1 and MFP 2. As described above, in order to divide the printing operation between the MFP 1 and MFP 2, “common settings” is selected in the “print settings”.

The allocated number determining unit 31 allocates a number of copies to the respective devices in charge (print number). The method of determining the number of allocated pages is described below. FIG. 15C illustrates an example of the device cooperation job whose print number is allocated to the MFP 1 and MFP 2. Compared to FIG. 15B, two output processes are created, and the MFP 1 and the MFP 2 are set as the respective devices in charge. The job management module 17 sends, to the MFP 2, a print request of which the device in charge of output is the MFP 2 together with job information (the whole job information may be sent). In the “print setting”, when the user selects “separate settings”, the job information of FIG. 15C is directly generated.

The summary of procedures of the copy application 11 in the case of FIG. 15C is described below.

1. First, the job management module 17 sends a usage request of the scanner engine of the device itself to the resource management module 14. The resource management module 14 confirms that the usage flag of the scanner engine is not indicating “in use”, and secures the scanner engine. Next, the resource management module 14 acquires scanning conditions (double-sided scanning, original document type (characters), 300 dpi, black-and-white) from the job management module 17, sets the scanning conditions in the scanner engine, and scans an original document. The resource management module 14 detects that there are no more original documents in the ADF (automatic document feeder) with a sensor, and reports that scanning is completed to the job management module 17. The generated image data of the original document is stored in the HDD 105.

The job management module 17 confirms that the number of pages to be printed after editing is less than or equal to the possible usage amount, at least before printing all pages. Specifically, the counter management module 19 counts the number of pages to be printed, and compares this with the possible usage amount. When the counted number of pages is greater than the possible usage amount, the following control operations are implemented. It is defined in the setting of the MFP 1 as to which one of the following control operations is to be implemented.

-   -   Print a number of pages according to the possible usage amount         set as the upper limit (divide the number of print pages among         plural MFPs so that each MFP prints a number of pages under the         possible usage amount)     -   Abort the device cooperation job without printing any pages

2. Because the device in charge of editing is the MFP 2, the job management module 17 sends the image data and the editing conditions to the MFP 2 via the communication management module 15. The MFP 2 performs a 4-in-1 process (combining four pages onto one sheet) on the image data and transmits the processed image data to the MFP 1. The communication management module 15 reports to the job management module 17 that the image data has been received from the MFP 2.

The job management module 17 sends, to the MFP 2, the job information and image data whose device in charge is the MFP 2.

3. The job management module 17 of the MFP 1 and the MFP 2 sends a usage request of the plotter engine of the device itself to the resource management module 14. The resource management module 14 confirms that the usage flag of the plotter engine is not indicating “in use”, and secures the plotter engine. Next, the resource management module 14 acquires print conditions (black-and-white, three copies (MFP 1) or two copies (MFP 2), A4, punch) from the job management module 17, sets the print conditions in the plotter engine, and executes printing. The resource management module 14 reports, to the job management module 17, that printing of all pages has been completed.

Fax Application

FIG. 15D illustrates an example of job information of a device cooperation job of a fax application. In FIG. 15D, the device in charge of input is the MFP 1, the device in charge of editing is the MFP 1, and the devices in charge of output (fax transmission) are the MFP 1 and MFP 2. In order to divide the fax transmission operation into the MFP 1 and MFP 2, the user Q sets, in the transmission setting of the scanner application, a plural number of destinations (fax numbers) corresponding to the number of copies of the copy application.

When there are plural destinations (in the case of broadcasting), the allocated number determining unit 31 determines the destinations for each device in charge, in units of destinations. For example, when there are two destinations, and there are two MFPs in charge of fax transmission, each MFP becomes in charge of one destination. When there are an N number of destinations, and there are an M number of MFPs in charge of fax transmission, each MFP become in charge of N/M number of destinations.

Furthermore, it is efficient to allocate a destination to an MFP that is near the destination. For example when the MFP 1 is in Tokyo and the MFP 2 is in Osaka, and the respective area codes are 03 and 06, a destination having an area code of 03 is allocated to the MFP 1, and a destination having an area code of 06 is allocated to the MFP 2. By doing so, communication costs can be reduced. In this case, a table in which the area codes of destinations to be handled by each MFP is prepared.

FIG. 15E illustrates an example of a device cooperation job whose destinations are allocated to the MFP 1 and the MFP 2. Compared to FIG. 15D, two output processes are created, and MFP 1 and MFP 2 are respectively set as the device in charge of each output process. The job management module 17 sends, to the MFP 2, the job information whose device in charge of output is the MFP 2 (the whole job information may be sent).

In the case of FIG. 15E, the procedures of the fax application are briefly described below.

1. The input process is the same as the case of the copy application. The image data of an original document generated by scanning is stored in the HDD 105.

The job management module 17 confirms that the number of pages is less than or equal to the possible usage amount of the usage amount limit information 20 before starting fax transmission. When the number of pages is greater than the possible usage amount, the following control operations are implemented. It is defined in the setting of the MFP 1 as to which one of the following control operations is to be implemented.

-   -   Perform fax transmission according to the possible usage amount         set as the upper limit     -   Abort the device cooperation job without performing fax         transmission

2. The job management module 17 enlarges the image data by 120% because the device in charge of editing is the MFP 1.

The job management module 17 sends, to the MFP 2, the job information and image data whose device in charge is the MFP 2.

3. The job management modules 17 of the MFP 1 and the MFP 2 send a usage request for using the FCU 140 in the device itself to the resource management module 14. The resource management module 14 confirms that the usage flag of the FCU 140 is not indicating “in use”, and secures the FCU 140. Next, the resource management module 14 acquires the fax transmission conditions (fax number of destination) from the job management module 17, sets the fax transmission conditions in the FCU 140, and executes printing. The resource management module 14 reports that fax transmission of all pages has been completed to the job management module 17.

Operation Procedures when Allocating Usage Amount

FIGS. 16A and 16B indicate a sequence diagram illustrating procedures of allocating the usage amount from the MFP 1 to the MFP 2. Here, the copy application 11 is taken as an example.

The copy application requests the authentication module 18 to authenticate a user Q (step S10). The user Q sets execution conditions of a job.

When authentication is successful, the user Q sets job execution conditions. The copy application sends a job execution request for the device cooperation job to the job management module (step S20).

The job management module 17 executes an input process in cooperation with the resource management module 14 and the engine management module (step S30). By scanning an original document and generating image data, the number of pages of the image data is defined. Specifically, when the conditions include 50 sheets of original documents, double-sided scanning, combining 4-in-1, single-sided printing, and printing five copies, the number of pages per copy is calculated as follows.

50×2 (double-sided)/4=25 pages

Therefore, in the case of five copies, the number of pages is calculated as follows.

25 pages×5 copies=125 pages

Next, the job management module 17 requests the counter management module 19 to acquire the usage amount limit information 20 (step S40).

The counter management module 19 reads the possible usage amount from the usage amount limit information 20, and sends the possible usage amount to the job management module 17 (step S50). Here, the usage amount determining unit 32 determines whether the total number of pages of the MFP 1 and the MFP 2 is less than or equal to the possible usage amount.

When the total number of pages is less than or equal to the possible usage amount, the job management module 17 requests the communication management module 15 to acquire the device management information 21 from the MFP 2 (step S60).

The communication management module 15 communicates with the communication management module 15 of the MFP 2 (step S70). The communication management module 15 of the MFP 2 requests the resource management module 14 to provide the device management information 21 (step S80). The resource management module 14 is not shown in FIGS. 16A and 16B. The resource management module 14 reads the device management information 21 and sends the device management information 21 to the communication management module 15 (step S90). The communication management module 15 of the MFP 2 sends the device management information 21 to the communication management module 15 of the MFP 1 (step S100). The communication management module 15 of the MFP 1 sends the device management information 21 of the MFP 2 to the job management module 17 (step S110).

The allocated number determining unit 31 of the job management module 17 determines the number of pages to be allocated to the MFP 2, from the device management information 21 of the MFP 1 and the MFP 2 (step S120). After the number of pages to be allocated to the MFP 2 is determined, the number of pages to be allocated to the MFP 1 is determined.

a) Determining Number of Pages to be Allocated Based on Printing Speed

The allocated number determining unit 31 determines the number of pages to be allocated to the MFP 2 so that the printing is completed most quickly. The printing is completed most quickly when the MFP 1 and the MFP 2 complete printing at substantially the same time, and therefore the number of pages to be allocated to the MFP 2 may be determined by the following formula. It is assumed that the printing speed of the MFP 1 is n1 sheets/minute, the printing speed of the MFP 2 is n2 sheets/minute, and the total number of pages is N. The result is rounded up.

Number of pages to be allocated to MFP 2=N×{n2/(n1+n2)}

When one copy is printed, N=number of pages (25 pages as described above). When plural copies are printed, N=number of copies (five copies as described above), which is divided by the number of MFPs cooperating with each other, and the remainder is allocated to the MFP having a higher printing speed, so that the pages can be allocated in units of copies. That is to say, 5÷2=2.5, and therefore two copies are allocated to the MFP 1 and three copies are allocated to the MFP 2 (when the MFP 2 has a higher printing speed).

When plural copies are printed and N=number of pages, and the number of pages allocated to the MFP 2 is not an integral multiple of 25 pages, the 25 pages corresponding to one copy is allocated to the MFP 1 and the MFP 2. That is to say, the quotient and remainder obtained from the number of pages allocated to the MFP 2÷25 pages, and the quotient and remainder obtained from the number of pages allocated to the MFP 1÷25 pages, are calculated. The MFP 2 prints a number of copies corresponding to the quotient and a number of pages corresponding to the remainder (for example, pages of low numbers), and the MFP 1 prints a number of copies corresponding to the quotient and a number of pages corresponding to the remainder (for example, pages of high numbers).

By determining the number of pages to be allocated according to the printing speed, the time taken to complete a job can be minimized.

When there are three devices used for printing, the following calculation is performed.

Number of pages allocated to MFP 1=N×{n1/(n1+n2+n3)}

Number of pages allocated to MFP 2=N×{n2/(n1+n2+n3)}

Number of pages allocated to MFP 3=N×{n3/(n1+n2+n3)}

b) Determining Number of Pages to be Allocated Based on Printing Power Consumption

When the power consumption is different when printing with the MFP 1 and the MFP 2, the job can be executed by minimum power consumption by printing all of the pages with the MFP of lower power consumption. In this case, the printing cannot be divided among plural MFPs, and therefore the printing time is longer. However, when the printing is switched between color printing and black-and-white printing in units of copies, power consumption can be minimized by printing the copies specified as color with the MFP having low power consumption for color printing, and printing the copies specified as black-and-white with the MFP having low power consumption for black-and-white printing. For example, when the power consumption for color printing of the MFP 1 is 40 W·h, the power consumption for black-and-white printing of the MFP 1 is 10 W·h, the power consumption for color printing of the MFP 2 is 30 W·h, and the power consumption for black-and-white printing of the MFP 2 is 13 W·h, the allocated number determining unit 31 allocates the copies specified as color printing to the MFP 2, and allocates the copies specified as black-and-white printing to the MFP 1.

Furthermore, when monochrome printing of either color or black-and-white is performed, the printing speed can be weighted by the power consumption to determine the number of pages to be allocated to the MFP 2. For example, assuming the power consumption of color or black-and-white of the MFP 1 is w1 W·h, and the power consumption of color or black-and-white of the MFP 2 is w2 W·h, the weighted printing speed is calculated as follows. That is to say, by weighting the printing speed by a lower weight as the power consumption is higher, it is possible to decrease the number of pages allocated to the MFP having high power consumption.

Printing speed of MFP 1=n1{w1/(w1+w2)}

Printing speed of MFP 2=n2{w2/(w1+w2)}

c) Determining Number of Pages to be Allocated Based On Equal Allocation

When the number of pages is allocated equally, the MFP 1 does not need to acquire the device information of the MFP 2, and the total number of pages is to be divided by the number of MFPs.

The job management module 17 requests the communication management module 15 to send image data (step S130). The communication management module 15 sends image data to the communication management module 15 of the MFP 2 (step S140). The communication management module 15 of the MFP 2 sends the image data to the job management module 17 (step S150).

The job management module 17 of the MFP 1 requests the communication management module 15 to send job information of the output process among all the job information, including the allocated page number (step S160). The communication management module 15 sends the job information to the communication management module 15 of the MFP 2 (step S170). The communication management module 15 of the MFP 2 sends the job information to the job management module 17 (step S180).

The job management module 17 of the MFP 2 collaborates with the resource management module 14 and the engine management module 16 to print the allocated number of pages (step S190).

The job management module 17 of the MFP 1 also collaborates with the resource management module 14 and the engine management module 16 to print the allocated number of pages (step S200). The job management module 17 reports the print results in units of output to the counter management module 19 (step S201). The counter management module 19 updates the usage amount of the MFP 1 in units of output (step S202).

The job management module 17 of the MFP 2 sends the print execution result to the communication management module 15 (step S210). The communication management module 15 sends the print execution result to the communication management module 15 of the MFP 1 (step S220). The communication management module 15 of the MFP 1 sends the print execution result to the job management module 17 (step S230).

The job management module 17 reports the execution result of the MFP 2 to the counter management module 19 (step S240), and the counter management module 19 collectively updates the usage amount (or possible usage amount) of the MFP 2 (step S250).

The job management module 17 waits for the device itself to end printing, and sends the job execution result to the copy application (step S260).

As described above, the device cooperation system 200 according to the present embodiment can appropriately limit the usage amount of the user Q in a device cooperation job.

In FIGS. 16A and 16B, the copy application is taken as an example. In the case of a fax application also, the same procedures are performed except for the method of determining the allocated page number.

When Job Execution Error Occurs in MFP 2

After the MFP 1 requests the MFP 2 to execute printing, there may be cases where an error occurs before the MFP 2 completes printing the allocated page number. For example, while the MFP 2 is printing, there may be cases where the MFP 2 runs out of paper of toner, or a paper jam occurs. Furthermore, a system error may occur due to a voltage decrease or noise. In this case, it is possible to reduce the job execution time by having the MFP 1 take over the printing operation instead of waiting for the MFP 2 to recover and resume printing.

FIGS. 17A and 17B indicate a sequence diagram illustrating procedures of allocating the usage amount from the MFP 1 to the MFP 2. In FIGS. 17A and 17B, the procedures up to executing the job are the same as those of FIGS. 15A through 15E.

After the MFP 2 starts printing in step S190, an error occurs and printing cannot be continued (step S192).

The job management module 17 is counting the number of printed pages, and sends a non-completion report including the number of remaining pages to the communication management module 15 (step S194). Specifically, the number of printed pages is to be subtracted from the allocated page number.

The communication management module 15 of the MFP 2 sends a non-completion report including the remaining number of pages to the communication management module 15 of the MFP 1 (step S196). The communication management module 15 of the MFP 1 sends the non-completion report including the remaining number of pages to the job management module 17 (step S198). The job management module 17 performs printing of the incomplete printing after completing printing for the device itself (step S204).

The job management module 17 reports the execution result of the MFP 2 to the counter management module 19 (step S240), the counter management module 19 collectively updates the usage amount of the MFP 2 (step S250). The usage amount of the MFP 2 includes the number of pages printed by the MFP 2 and the number of pages allocated from the MFP 1 to the MFP 2 but printed by the MFP 1.

When the incomplete printing is completed, the job management module 17 sends the device cooperation job execution result to the copy application (step S260).

As described above, by using device cooperation, even when an error occurs in the cooperating device, the job can be completed. In FIGS. 17A and 17B, the copy application is taken as an example, but the same process is performed in the case of a fax application. That is to say, when there is a destination to which no sheets have been sent, the MFP 1 sends all pages to this destination. When there is an destination to which some sheets have not been sent, the MFP 1 sends the remaining pages to this destination.

When Job Execution Error Occurs in MFP 1

There may be a case where an error occurs in the MFP 1. For example, while the MFP 1 is printing, there may be cases where the MFP 1 runs out of paper of toner, or a paper jam occurs. Furthermore, a system error may occur due to a voltage decrease or noise. In this case, it is possible to reduce the job execution time by having the MFP 2 take over the printing operation instead of waiting for the MFP 1 to recover and resume printing.

FIGS. 18A and 18B indicate a sequence diagram illustrating procedures of allocating the usage amount from the MFP 1 to the MFP 2. In FIGS. 18A and 18B, the procedures up to executing the job are the same as those of FIGS. 15A through 15E.

After the MFP 2 starts printing in step S190, an error occurs and printing cannot be continued (step S200-2).

The job management module 17 is counting the number of printed pages, and sends a non-completion report including the number of remaining pages to the communication management module 15 (step S194). Specifically, the number of printed pages is to be subtracted from the allocated page number.

The communication management module 15 of the MFP 1 sends a reallocation report including the remaining number of pages to the communication management module 15 of the MFP 2 (step S196). The communication management module 15 of the MFP 2 sends the reallocation report including the remaining number of pages to the job management module 17 (step S198).

The job management module 17 of the MFP 2 performs printing of the reallocated pages from the MFP 1 after printing for the device itself (step S204).

The job management module 17 of the MFP 2 reports the execution result including the reallocated printing to the communication management module 15 (step S210). The communication management module 15 sends the execution result of the device cooperation job to the communication management module 15 of the MFP 1 (step S220). The communication management module 15 of the MFP 1 sends the job execution result to the job management module (step S230).

The job management module 17 reports the execution result of the MFP 2 to the counter management module 19 (step S240), and the counter management module 19 collectively updates the usage amount of the MFP 2 (step S250). The usage amount of the MFP 2 includes the number pages allocated to and printed by the MFP 2 and the number of pages reallocated from the MFP 1 to the MFP 2 and printed by the MFP 2.

The job management module 17 sends an execution result of the device cooperation job to the copy application (step S260).

Therefore, even if an error occurs in either the MFP 1 or the MFP 2, the MFP without an error takes over the printing operation, and therefore an increase in the printing time can be minimized.

Allocation in Units of Output

While executing a job in which the MFPs 1 and 2 are outputting a large amount of sheets, there may be cases where the user Q (who has instructed this job) operates other MFPs (for example, MFPs 3 and 4) that are device-cooperating with the MFP 1 to perform printing, and the possible usage amount of the user Q decreases. Due to the decrease in the possible usage amount, the number of printed sheets may exceed the upper limit usage amount of the MFPs 1 and 2. In order to prevent such inconveniences, it is efficient to confirm whether the possible usage amount of the MFP 1 is not zero every time a sheet is printed, and to request the MFP 2 to perform printing.

FIGS. 19A and 19B indicate a sequence diagram illustrating procedures of allocating printing by each sheet from the MFP 1 to the MFP 2. In FIGS. 19A and 19B, the procedures up to step S150 are the same as those of FIGS. 16A and 16B. That is to say, the job management module 17 requests the communication management module 15 to first send on the image data (steps S130 through S150).

Next, the job management module 17 of the MFP 1 requests the communication management module 15 to send job information of one sheet to be output (step S310).

The communication management module 15 communicates with the communication management module 15 of the MFP 2 (step S320). The communication management module 15 of the MFP 2 sends the job information to the communication management module 15 (step S330).

The job management module 17 of the MFP 2 collaborates with the resource management module 14 and the engine management module 16 to perform printing of one sheet (step S340).

The MFP 1 and the MFP 2 execute printing in an asynchronous manner, and update the usage amount as necessary (steps S200 through S202). Accordingly, the execution time of the job can be reduced.

The job management module 17 of the MFP 2 sends the print execution result of one sheet to the communication management module 15 (step S350). The communication management module 15 of the MFP 2 sends the print execution result of one sheet to the communication management module 15 of the MFP 1 (step S360). The communication management module 15 of the MFP 1 sends the print execution result of one sheet to the job management module 17 (step S370).

The job management module 17 reports the execution result of the MFP 2 to the counter management module 19 (step S380), and subtracts the usage amount of the MFP 2 from the possible usage amount (step S390).

Next, the job management module 17 determines whether a job has ended (step S400).

When the job has not ended, the job management module 17 determines whether the possible usage amount is zero (step S410). This is because the possible usage amount may decrease when the MFP 1 performs device cooperation with an MFP other than the MFP 2. When the possible usage amount is zero, the job management module 17 ends the job.

When the possible usage amount is not zero, the job management module 17 determines whether the printing allocated to the MFP 2 has ended (step S420).

When the printing allocated to the MFP 2 has not ended, the MFP 1 and the MFP 2 repeats the process from step S310. The MFP 1 is executing printing in an asynchronous manner, and therefore the MFP 1 is likely to execute the printing allocated to the MFP 2. However, if an error occurs in the MFP 1, the process is repeated until the printing allocated to the MFP 2 is completed, and therefore printing of the allocated page number of the MFP 2 can be surely completed.

As described above, it is determined that the possible usage amount is not zero every time a sheet is output, and printing is allocated to the MFP 2 only when the possible usage amount is zero, and therefore it is possible to prevent the printed sheets from exceeding the upper limit usage amount of the user Q.

In FIGS. 19A and 19B, it is assumed that the MFP 1 performs device cooperation with the MFP 3 while the MFP 1 and the MFP 2 are executing a device cooperation job. However, to facilitate the operation of strictly limiting the usage amount, the MFP 1 may be prohibited from performing device cooperation with the MFP 3 while the MFP 1 and the MFP 2 are executing a device cooperation job. For example, the MFP 1 may prohibit plural device cooperation jobs from being executed in parallel, as follows.

-   -   Do not accept plural device cooperation jobs requested by the         same user that is logged in.     -   When the start button is pressed, the job management module 17         executes the device cooperation jobs one by one in order.

By doing so, there is no need to determine that the possible usage amount is not zero every time one sheet is output, and therefore the time taken to complete the job can be reduced.

In the case of the fax application, the job management module 17 of the MFP 1 may allocate the fax transmission to MFPs in units of pages, or in units of destinations.

Reservation of Allocated Page Number

In FIGS. 16A and 16B, the updating of the usage amount based on the execution result of the MFP 2 is performed when the MFP 1 ends executing the job. By this method, there is a delay in the updating of the usage amount output by the MFP 2, and there may be cases where the job cannot be executed in parallel. Therefore, it is effective to subtract the allocated page number of the MFP 2 from the possible usage amount before the MFP 1 starts printing.

FIGS. 20A and 20B indicate is a sequence diagram illustrating procedures of subtracting the allocated page number of the MFP 2 from the usage amount limit information 20 before the MFP 1 starts executing the job. In FIGS. 20A and 20B, the procedures up to step S120 are the same as those of FIGS. 16A and 16B.

After the allocated number determining unit 31 determines the allocated page number of the MFP 2, the allocated number determining unit 31 reports the number to the counter management module 19 (step S121). The counter management module 19 updates the usage amount of the MFP 2 at this time point (step S122). That is to say, it is ensured that the printed sheets do not exceed the usage limit even if the MFP 2 prints the allocated usage amount as the reservation amount. The sheets printed by the MFP 1 are to be updated every time printing is performed, similar to FIGS. 16A and 16B. The subsequent procedures are the same as those of FIGS. 16A and 16B, and are thus not further described.

According to the procedures of FIG. 20, the usage amount of the MFP 2 is reserved before the printing starts, and therefore the MFP 1 can execute a job by performing device cooperation with another MFP 3 within the remaining possible usage amount. The sheets printed by the MFP 1 may be updated before printing, similar to the MFP 2. In FIG. 20, the copy application is taken as an example, but the same process is applicable to a fax application.

According to one embodiment of the present invention, a device cooperation system is provided, which provides a usage amount limiting device capable of limiting the usage amount at the time of device cooperation.

The device cooperation system, the image forming apparatus, and the function providing method are not limited to the embodiments described herein, and variations and modifications may be made without departing from the scope of the present invention.

The present application is based on Japanese Priority Patent Application No. 2011-194973, filed on Sep. 7, 2011, the entire contents of which are hereby incorporated herein by reference. 

1. A device cooperation system comprising: plural devices connected via a network, which take partial charge of providing a function of the plural devices, wherein a first device includes an acquiring unit configured to acquire image data that is an output target, an output condition receiving unit configured to receive an output condition used when the first device and at least one second device output the image data, a storage unit configured to store a possible output amount that can be output by the first device, an output possibility determining unit configured to determine whether a total page number, which is obtained from the output condition and a number of pages of the image data acquired by the acquiring unit, is less than or equal to the possible output amount, an allocation number determining unit configured to determine a first output number to be allocated to the first device and a second output number to be allocated to the at least one second device, a data communication unit configured to send the image data and the second output number to the at least one second device, and a possible output amount update unit configured to update the possible output amount according to an output number output by the first device and the at least one second device.
 2. The device cooperation system according to claim 1, wherein the first device and the at least one second device respectively store print speed information, and the allocation number determining unit determines the first output number and the second output number so that a difference in printing time between the first device and the at least one second device is minimum.
 3. The device cooperation system according to claim 2, wherein the first device and the at least one second device respectively store power consumption information, and the allocation number determining unit determines the first output number and the second output number so that the difference in the printing time between the first device and the at least one second device is minimum, with the use of the print speed information that is weighted by the power consumption information of the first device and the at least one second device.
 4. The device cooperation system according to claim 3, wherein the first device and the at least one second device respectively store power consumption information relevant to color printing and power consumption information relevant to black-and-white printing, and the allocation number determining unit allocates an output number for color printing included in the output condition to either the first device or the at least one second device having a lower level of the power consumption information relevant to color printing, and allocates an output number for black-and-white printing included in the output condition to either the first device or the at least one second device having a lower level of the power consumption information relevant to black-and-white printing.
 5. The device cooperation system according to claim 1, wherein the allocation number determining unit determines the first output number and the second output number so that the first output number and the second output number are equal.
 6. The device cooperation system according to claim 1, wherein when the at least one second device detects an error by which output cannot be continued until an output object corresponding to the second output number is output, the first device adds, to the first output number, a remaining output number that is not output in the second output number, and outputs the first output number including the remaining output number.
 7. The device cooperation system according to claim 1, wherein when the first device detects an error by which output cannot be continued until an output object corresponding to the first output number is output, the at least one second device adds, to the second output number, a remaining output number that is not output in the first output number, and outputs the second output number including the remaining output number.
 8. The device cooperation system according to claim 1, wherein the possible output amount update unit determines whether the possible output amount is zero every time an output execution result is acquired from the at least one second device, and the data communication unit requests the at least one second device to output the second output number in minimum output units when the possible output amount is not zero.
 9. The device cooperation system according to claim 1, wherein the output condition receiving unit prohibits the first device from receiving another output condition until the at least one second device completes outputting the second output number after receiving the output condition, or the first device starts outputting after the at least one second device completes outputting the second output number, when the first device receives the another output condition during a time period from when the output condition receiving unit receives the output condition to when the at least one second device completes outputting the second output number.
 10. The device cooperation system according to claim 1, wherein the possible output amount update unit subtracts the second output number from the possible output amount after the allocation number determining unit determines the first output number and the second output number, regardless of whether the at least one second device has performed outputting.
 11. The device cooperation system according to claim 1, wherein the output condition receiving unit acquires power consumption for recovering to an output possible state from the at least one second device registered in a list stored in advance, and displays the acquired power consumption together with identification information of the at least one second device.
 12. The device cooperation system according to claim 1, wherein the output condition receiving unit receives a transmission condition used when the first device and the at least one second device transmit the image data by fax, and when the output possibility determining unit determines that a number of transmission destinations in the transmission condition is less than or equal to the possible output amount, the allocation number determining unit determines transmission destinations to be allocated to the first device and transmission destinations to be allocated to the one or more second devices, by each transmission destination of fax transmission.
 13. The device cooperation system according to claim 1, wherein the acquiring unit is a scanner device that takes an image of an original document to acquire the image data, or a data communication device that acquires the image data from a terminal.
 14. The device cooperation system according to claim 13, wherein the first device and the at least one second device is a printing device that forms an image on a recording medium or a fax transmission device that transmits the image data via a telephone line or an IP network.
 15. An image forming apparatus for taking partial charge of providing a function with at least one device connected via a network, the image forming apparatus comprising: an acquiring unit configured to acquire image data that is an output target; an output condition receiving unit configured to receive an output condition used when the first device and at least one second device output the image data; a storage unit configured to store a possible output amount that can be output by the first device; an output possibility determining unit configured to determine whether a total page number, which is obtained from the output condition and a number of pages of the image data acquired by the acquiring unit, is less than or equal to the possible output amount; an allocation number determining unit configured to determine a first output number to be allocated to the first device and a second output number to be allocated to the at least one second device; a data communication unit configured to send the image data and the second output number to the at least one second device; and a possible output amount update unit configured to update the possible output amount according to an output number output by the first device and the at least one second device.
 16. A function providing method by which plural devices connected via a network take partial charge of providing a function of the plural devices, the function providing method comprising: acquiring image data that is an output target; receiving an output condition used when a first device and at least one second device output the image data; determining whether a total page number, which is obtained from the output condition and a number of pages of the image data acquired at the acquiring, is less than or equal to a possible output amount that can be output by the first device, the possible output amount being stored in a storage unit; determining a first output number to be allocated to the first device and a second output number to be allocated to the at least one second device; sending the image data and the second output number to the at least one second device; and updating the possible output amount according to an output number output by the first device and the at least one second device. 